package com.stellar.auth.convert;

import com.stellar.auth.basic.entity.AuthPermission;
import com.stellar.auth.controller.admin.authPermission.vo.AuthPermissionRequestPageVO;
import com.stellar.auth.controller.admin.authPermission.vo.AuthPermissionRequestVO;
import com.stellar.auth.controller.admin.authPermission.vo.AuthPermissionResponseVO;
import com.stellar.auth.controller.admin.authPermission.vo.AuthPermissionTreeVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 权限表转换器
 * @author Jqchan
 * @version 1.0
 * @date 2025-05-16 18:07:22
 */
@Mapper
public interface AuthPermissionConvert {

    AuthPermissionConvert INSTANCE = Mappers.getMapper(AuthPermissionConvert.class);

    AuthPermission convert(AuthPermissionResponseVO responseVO);

    AuthPermission convert(AuthPermissionRequestVO requestVO);

    AuthPermission convert(AuthPermissionRequestPageVO requestPageVO);

    AuthPermissionResponseVO convert(AuthPermission entity);

    List<AuthPermissionResponseVO> convertEntityToRespList(List<AuthPermission> entities);

    AuthPermissionTreeVO convertToTreeVO(AuthPermission authPermission);
}
